bitkeeper revision 1.1098.1.4 (4107d68d24en-s2mTTxoCRqdg3l1fA)
authorsos22@donkeykong.cl.cam.ac.uk <sos22@donkeykong.cl.cam.ac.uk>
Wed, 28 Jul 2004 16:38:37 +0000 (16:38 +0000)
committersos22@donkeykong.cl.cam.ac.uk <sos22@donkeykong.cl.cam.ac.uk>
Wed, 28 Jul 2004 16:38:37 +0000 (16:38 +0000)
Avoid a bogus tail call optimisation.

xen/common/keyhandler.c

index 0e137a319eff2f92e5cca1f0cba6a56bbe91efe1..c412091c6bd7e742d2b136deb209be22be931c0e 100644 (file)
@@ -119,6 +119,9 @@ void do_debug_key(unsigned char key, void *dev_id, struct pt_regs *regs)
 {
     extern void trap_to_xendbg(void);
     trap_to_xendbg();
+    asm volatile ("nop"); /* Prevent the compiler doing tail call
+                            optimisation, as that confuses xendbg a
+                            bit. */
 }
 
 void initialize_keytable(void)